import store from '@/store'
import axios from 'axios'

export const baseURL = 'http://big-event-vue-api-t.itheima.net'
const axiosInstance = axios.create({
  baseURL,
  timeout: 5000
})

const whiteAPIList = ['/api/login', '/api/register']

// 定义请求拦截器
axiosInstance.interceptors.request.use(
  function (config) {
    // config 配置对象 要求后台的参数都在这个对象上
    if (!whiteAPIList.includes(config.url)) {
      config.headers.Authorization = store.state.token
    }
    return config
  },
  function (error) {
    return Promise.reject(error)
    // reject 为 Promise 的一个类方法，原地留下一个新的状态为失败的Promise对象
  }
)

export default axiosInstance
